home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-04 / 422mods.zip / TPOH002.422 < prev    next >
Text File  |  1993-03-03  |  7KB  |  240 lines

  1. TPOH002.MOD  look at it.. woooooooooooooooooow!
  2. Shadow Lord #152 @27458
  3. Sat Feb 20 10:55:26 1993
  4. ┌───────────────────────────────────────────────────────────────────────────┐
  5. │ Mod Name      : TPOH002.MOD                 Mod Author: 3Shadow 1Lord       0│
  6. │ Difficulty    : Must have a Brain!!         Date      : February 19, 1993 │
  7. │ WWIV Version  : 4.22+ maybe..                                             │
  8. │ Files Affected: BBS.C VERDEC.H                                            │
  9. │ Description   : Gives a BBS another System Password.. and an internal INIT│
  10. │ <sort of> to configure the password!!! And a password to enter the INIT!  │
  11. └───────────────────────────────────────────────────────────────────────────┘
  12.  
  13.     Well this is onlt my second mod.. so if i make a mistake, suck me!  hehe
  14.  
  15.    I mainly made this mod because 1 LAZER #154 @8560 needed a system password
  16.    for his little brother, so he couldn't get into the INIT.EXE and have fun..
  17.  
  18.  
  19. 6DISCLAIMER0: I made the mod, you installed it.. your fault!  If your goldfish
  20.         commits suicide and jumps out of the fish bowl, and your cat eats
  21.         the fish, and your dog eats the cat, your vulture eats the dog,
  22.         your missle silo explodes killing your block, and Clinton raises
  23.         your taxes, well, kill Clinton, not me...
  24.  
  25. The following notations are used:
  26.  
  27. ==  Existing 
  28. $$  Modified 
  29. ++  Added 
  30.  
  31. Step 1:
  32.  
  33. Open BBS.C
  34.  
  35. Step 2:
  36.  
  37. Right after "int checkpw(void)" block read this funtion
  38.  
  39. ++int checkpw1(void)
  40. ++{
  41. ++  char s[81], s1[81];
  42. ++
  43. ++  nl();
  44. ++  prt(7,"Enter the 5INIT7 password2 : 0 ");
  45. ++  echo=0;
  46. ++  input(s,20);
  47. ++  echo=1;
  48. ++  if (strcmp(s,(syscfg.systempw1))==0)
  49. ++    return(1);
  50. ++  else
  51. ++    sysoplog("6!@! 7Failed INIT Password");   /* write to the log */
  52. ++    sprintf(s1,"6%s 3tried enter 6INIT.",nam(&thisuser,usernum));
  53. ++      ssm(1,0,s1); /* sends you a SSM that the user FAILED! the password */
  54. ++    return(0);
  55. ++}
  56.  
  57. Step 3:
  58.  
  59. Right before "if ((strcmp(s,"REBOOT")==0) && (checkpw())) { " add this:
  60.  
  61. ++ if ((strcmp(s,"INIT")==0)) {
  62. ++   if (checkpw1()) {
  63. ++       topscreen();
  64. ++       extramenu();
  65. ++       topscreen();
  66. ++      }
  67. ++    }
  68.  
  69. Step 4:
  70.  
  71. Add this at the VERY bottom of BBS.C:
  72.  
  73. ++void extramenu(void)
  74. ++{
  75. ++ char s[161],s1[81],s2[161],s3[161],ch,ch1,*p;
  76. ++ int done,i,i1,i2;
  77. ++ float f;
  78. ++
  79. ++  done=0;
  80. ++  strcpy(s3,restrict_string);
  81. ++  strcat(s3,"01234");
  82. ++  do {
  83. ++  for (i=0; i<=15; i++) {
  84. ++    if (syscfg.newuser_restrict & (1 << i))
  85. ++      s2[i]=s3[i];
  86. ++    else
  87. ++      s2[i]=32;
  88. ++  }
  89. ++  s2[16]=0;
  90. ++  configfile=open("CONFIG.DAT",O_RDWR | O_BINARY);
  91. ++  if (configfile<0) {
  92. ++   printf("CONFIG.DAT NOT FOUND.\n");
  93. ++   return;
  94. ++ }
  95. ++ read(configfile,(void *) (&syscfg), sizeof(configrec));
  96. ++ close(configfile);
  97. ++  sprintf(s,"%sSTATUS.DAT",syscfg.datadir);
  98. ++  statusfile=open(s,O_RDWR | O_BINARY);
  99. ++  if (statusfile<0) {
  100. ++    printf("6%s NOT FOUND.  You TARD!!!!\n",s);
  101. ++    return;
  102. ++  }
  103. ++  read(statusfile,(void *)(&status), sizeof(statusrec));
  104. ++  close(statusfile);
  105. ++  nl();
  106. ++  npr("A. System 2 PW      : %s\r\n",syscfg.systempw2);
  107. ++  npr("B. INIT PW          : %s\r\n",syscfg.systempw1);
  108. ++  npr("Q. QUIT!\r\n");
  109. ++  npr("\r\n\r\n");
  110. ++  npr("Which ?");
  111. ++  ch=onek("ABCDEFGQ");
  112. ++  switch(ch) {
  113. ++     case 'A':
  114. ++      npr("\r7Enter new System 2 Password2: ");
  115. ++          gets(s1);
  116. ++      strcpy(syscfg.systempw2,strupr(s1));
  117. ++      break;
  118. ++     case 'B':
  119. ++      npr("\r7Enter new INIT Password2: ");
  120. ++          gets(s1);
  121. ++      strcpy(syscfg.systempw1,strupr(s1));
  122. ++      break;
  123. ++     case 'Q':
  124. ++      done=1;
  125. ++     break;
  126. ++   }
  127. ++  configfile=open("CONFIG.DAT",O_RDWR | O_BINARY);
  128. ++  write(configfile,(void *) (&syscfg), sizeof(configrec));
  129. ++  close(configfile);
  130. ++ }while (!done);
  131. ++}
  132.  
  133. Now, we have the init in, so lets make the System Two Password
  134.  
  135. Step 5:
  136.  
  137. add this after the "int checkpw1(void)" :
  138.  
  139. ++int checkpw2(void)
  140. ++{
  141. ++  char s[81], s1[81];
  142. ++
  143. ++  nl();
  144. ++  prt(7,"Enter the 9DOS7 Password 2:0 ");  /* NOTE 1 */
  145. ++  echo=0;
  146. ++  input(s,20);
  147. ++  echo=1;
  148. ++  if (strcmp(s,(syscfg.systempw2))==0)
  149. ++    return(1);
  150. ++  else
  151. ++    nl();
  152. ++    prt(6,"Wrong password Looser!");
  153. ++    nl();
  154. ++    sysoplog("6@!@! 7Failed DOS Password");      /* NOTE 1 */
  155. ++    sprintf(s1,"6%s 3tried to go to 6DOS.",nam(&thisuser,usernum));
  156. ++       ssm(1,0,s1);
  157. ++    return(0);
  158. ++}
  159.  
  160. Step 6a:
  161.  
  162. Close BBS.C
  163.  
  164. Step 6b:
  165.  
  166. Add this to the VERDEC.H  (sorry, had to be done...) :
  167.  
  168. /* STATIC SYSTEM INFORMATION */  /* add in here */
  169. ++      char            systempw1[21],          /* INIT password */
  170. ++                      systempw2[21];          /* System 2 Password */
  171.  
  172.  
  173. Step 7a:
  174.  
  175. Re Open BBS.C  hahahah
  176.  
  177. Step 7b:
  178.  
  179. Modify the DOS statement
  180.  
  181. ==  if (strcmp(s,"DOS")==0) {
  182. ++    if (thisuser.ar & 4) {  /* NOTE 2 */
  183. $$     if (checkpw2()) {
  184. ==      sysoplog(get_stringx(1,6));
  185. ==      shrink_out(getenv("COMSPEC"),1,1,1,0);
  186. ==      topscreen();
  187. ==    }
  188. ==  }
  189. ++  }else{
  190. ++     if (checkpw()) {
  191. ++      sysoplog(get_stringx(1,6));
  192. ++      shrink_out(getenv("COMSPEC"),1,1,1,0);
  193. ++      topscreen();
  194. ++    }
  195. ++  }
  196.  
  197.  
  198. Step 8:
  199.  
  200. Do the same for all of the other functions that you want your Remote
  201. to have access to.. (ex:) :
  202.  
  203. ==    if (strcmp(s,"UEDIT")==0) {
  204. ++    if (thisuser.ar & 4) { /* NOTE 2 */
  205. ++     if (checkpw2()) {
  206. ==      sysoplog(get_stringx(1,10));
  207. ==      uedit(usernum,0);
  208. ++       }
  209. ++      }
  210. ==     }
  211.  
  212. And that would make it so the Remote would have to enter the SysTem 2
  213. Password to enter Uedit
  214.  
  215. Step 9:
  216.  
  217. Now, at the DOS prompt type "MAKE FCNS" and then COMPILE your WHOLE BBS!
  218. if you have a XT, get a new computer, but if you have a 586, send it to me!
  219.  
  220. If you see any improvements, errors, pretty colors, write me an E-mail.
  221. or if you just want to chat, send me an E-mail.
  222. or if you think that you want some E-mail, send me an E-mail.
  223. or if you use my mod, send me an E-mail.
  224. or if you think that a gerbil is stuck up your butt, DONT send me an E-mail.
  225.  
  226. /* NOTE 1 */
  227.   I use the system two password for DOS, you might use it for something
  228.   else...  (but what!?!?! and why!?!?!?)
  229.  
  230. /* NOTE 2 */
  231.   if you have a co-sysop, remote sysop, give him the ar of "C",
  232.   and for 7LAZER #154 @8560 give your little brother the "C" AR.. ehehe
  233.  
  234.  
  235.      Shadow Lord
  236.     22 @ 7458  WWiVnet     1 @1      HellNET
  237.        152 @ 7454  IceNET     18 @27455  WWiVLink
  238.  
  239. 0The world is over populated.  Delete it [Y/n]6_
  240.